package com.ruoyi.datastatistics.service;

import com.ruoyi.datastatistics.domain.RealtimegatherdataXb;
import com.ruoyi.datastatistics.vo.XbDatabase;
import com.ruoyi.datastatistics.vo.XbDatabaseVO;
import com.ruoyi.datastatistics.wxentity.WXRealtimegatherdataXb;

import java.util.List;

/**
 * 实时数据采集（小）Service接口
 *
 * @author ruoyi
 * @date 2023-09-07
 */
public interface IRealtimegatherdataXbService
{
    /**
     *  查询户表基本数据和实时信息
     */
    List<XbDatabase> basedataXb(XbDatabaseVO req);
    /**
     * 查询实时数据采集（小）
     *
     * @param TerminalID 实时数据采集（小）主键
     * @return 实时数据采集（小）
     */
    public RealtimegatherdataXb selectRealtimegatherdataXbByTerminalID(String TerminalID);

    /**
     * 查询实时数据采集（小）列表
     *
     * @param realtimegatherdataXb 实时数据采集（小）
     * @return 实时数据采集（小）集合
     */
    public List<RealtimegatherdataXb> selectRealtimegatherdataXbList(RealtimegatherdataXb realtimegatherdataXb);

    /**
     * 新增实时数据采集（小）
     *
     * @param realtimegatherdataXb 实时数据采集（小）
     * @return 结果
     */
    public int insertRealtimegatherdataXb(RealtimegatherdataXb realtimegatherdataXb);

    void batchinsertRealtimegatherdataXb(List<RealtimegatherdataXb> list);

    /**
     * 修改实时数据采集（小）
     *
     * @param realtimegatherdataXb 实时数据采集（小）
     * @return 结果
     */
    public int updateRealtimegatherdataXb(RealtimegatherdataXb realtimegatherdataXb);

    /**
     * 批量删除实时数据采集（小）
     *
     * @param TerminalIDs 需要删除的实时数据采集（小）主键集合
     * @return 结果
     */
    public int deleteRealtimegatherdataXbByTerminalIDs(String[] TerminalIDs);

    /**
     * 删除实时数据采集（小）信息
     *
     * @param TerminalID 实时数据采集（小）主键
     * @return 结果
     */
    public int deleteRealtimegatherdataXbByTerminalID(String TerminalID);

    List<RealtimegatherdataXb> selectRealtimegatherdataXbList2(RealtimegatherdataXb realtimegatherdataXb);
    List<RealtimegatherdataXb> selectList(RealtimegatherdataXb realtimegatherdataXb);

    List<WXRealtimegatherdataXb> selectWXRealtimegatherdataXbList(String terminalId, String startTime, String endTime);
}
